1. Field of the Invention
The present invention relates to a method for determining a motion vector and a macroblock type, and in particular to a method for determining a motion vector and a macroblock type of a frame transmitted without being skipped in a frame-rate conversion transcoder.
2. Description of the Prior Art
Video on Demand (VOD) or video streaming service is for transmitting requested video contents selectively by storing video contents as compressed file formats in a transmission server. Servicing video contents in a mobile communication network with low channel bandwidth or the Internet having variable channel bandwidth is challenging because channel bandwidth can be sharply reduced or congestion can occur.
To resolve these problems the transmission server has to reduce the video transmission frame-rate. A frame-rate conversion transcoder is utilized for adjusting a video transmission frame-rate. FIG. 1 is a block diagram illustrating operation of a general frame-rate conversion video transcoder.
In general, a moving picture such as a moving picture experts group (MPEG) is compressed through predictive encoding. In the predictive encoding, a signal value of a certain pixel is obtained by using difference between image signal values in different times. Each frame of moving picture has temporal correlation with each other. The frame is constructed with plural macroblocks. The macroblocks can be divided into inter type or intra type macroblocks.
Referring to FIG. 1, the frame-rate conversion video transcoder 10 includes a frame skipper 11 for skipping a frame in order to convert high frame-rate bit sequences into low frame-rate bit sequences; and an estimator 12 for allocating a new motion vector and a macroblock type of a following frame by using the frame skipped in the frame skipper 11 as a prediction reference.
When a certain frame is skipped in order to reduce the video transmission frame-rate, the following frame uses the skipped frame as a reference for prediction. Thus, a new motion vector and a new macroblock type have to be determined.
In order to determine a new motion vector, a FDVS (forward dominant vector selection) method has been presented by J. Youn and M. Sun (“Motion vector refinement for high-performance transcoding” IEEE Trans. on Multimedia, vol. no.1. pp30-40, March 1999). In an encoder, computational complexity required for estimating a motion vector is as great as 70% of a total computational complexity. Accordingly, the method for determining a new motion vector by using the previously obtained motion vector without performing motion vector estimation again has been presented by Youn and Sun.
FIG. 2 shows a current FDVS method. The FDVS method will be described with reference to an example skipping a frame N-1 in transmission. In the current FDVS method, among four macroblocks of the skipped frame, a motion vector of the macroblock having the greatest overlapped portion with a macroblock to be predicted is defined as a dominant motion vector. The dominant motion vector is defined as a motion vector of the macroblock of the skipped frame.
As depicted in FIG. 2, a macroblock having the greatest overlapped portion with a macroblock predicted by a motion vector MVN allocated to a macroblock MBN of a frame N is called MBN-1, and a motion vector allocated to the macroblock MBN-1 is called MVN-1.
Accordingly, a new motion vector MV′N of the macroblock MBN of a frame N following after a skipped frame N-1 can be calculated by adding the motion vector MVN allocated to the macroblock MBN to the motion vector MBN-1 allocated to the macroblock MVN-1. Equation 1, below, shows calculating the new motion vector MV′N of the macroblock MBN of the frame N.MV′N=MVN+MVN-1  (Equation 1)
As depicted in Equation 1, in the current FDVS, the previously obtained motion vector is utilized to determine a new motion vector about a frame to be transmitted after the skipped frame. However, by applying Equation 1 without considering a macroblock type of the macroblock MBN of the frame N, the following problems may occur.
First, when the macroblock MBN-1 of the frame N-1 is an ‘intra type’, a newly allocated motion vector MV′N is defined by Equation 2, provided below. Herein, a macroblock of the ‘intra type’ does not have a motion vector, a motion vector MVN-1 to be allocated to the macroblock MBN-1 is (0,0).MV′N=MVN+(0,0)=MVn  (Equation 2)
In Equation 2, the macroblock predicted by the motion vector MVN in the frame N-2 is matched so as to be the most similar to the macroblock predicted by the motion vector MVN in the frame N-1. However, since the frame N-1 and the frame N-2 have different characteristics, an optimum matching is not achieved.
Second, when the macroblock MBN of the frame N is a ‘skipped type’, in the FDVS method, regardless of a macroblock type of the skipped frame N-1, the macroblock MBN is determined as the ‘skipped type’. However, when a macroblock of the frame N-1 located at the same position with the macroblock MBN of the frame N is an ‘intra type’ or an ‘inter type’, the macroblock MBN is not coincided with a macroblock type of the frame N-1. In more detail, a reproduced image of the macroblock MBN decoded by using the frame N-2 as a reference image is different from actual image data of the macroblock MBN.
As described above, by estimating a new motion vector without considering a macroblock type of a frame skipped in transmission and a macroblock type of a frame predicted on the basis of the skipped frame, an image is reproduced through a decoder of a reception block that may be different from an actual image. As a result error may be accumulated in following images, and accordingly picture quality may be deteriorated. Methods and systems are needed that can overcome the above shortcomings associated with the current FDVS method.